home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
Pakiet bezpieczenstwa
/
mini Pentoo LiveCD 2006.1
/
mpentoo-2006.1.iso
/
livecd.squashfs
/
usr
/
bin
/
mail-files
< prev
next >
Wrap
Text File
|
2005-12-21
|
2KB
|
89 lines
#! /bin/bash
# Mail a list of files, as they are.
# Copyright (C) 1990, 1995 Free Software Foundation, Inc.
# Franτois Pinard <pinard@iro.umontreal.ca>, 1991.
package="sharutils"
version="4.2.1"
progname=`echo $0 | sed -e 's,.*/,,'`
usage="\
Usage: $progname [OPTION] DESTIN TYPE SUBJECT FILE ...
with OPTION in:
--help display this help and exit
--version output version information and exit
-x trace script"
trytext="Try \`$progname --help' for more information."
SLEEP=2
### Decode the options.
while test $# -gt 0; do
case $1 in
-x) trace=-x; set -x; shift ;;
--v* ) echo "$progname - $package $version"; exit 0 ;;
--h* ) echo "$usage"; exit 0 ;;
-) break ;;
-*) echo "$trytext"; exit 1 ;;
*) break
esac
done
if [ $# -lt 4 ]; then
echo "Too few arguments."
echo $trytext
exit 1
fi
destin="$1"; shift
type="$1"; shift
subject="$1"; shift
maxcount=$#
files="$*"
### Mail all files, making a proper subject for each message.
( if [ -f $destin ]; then
cat $destin
else
echo $destin
fi
) |
( total=0
while read destin; do
count=0
for file in $files; do
if [ ! -f $file ]; then
echo "$file not found"
continue
fi
count=`expr $count + 1`
if [ $maxcount = 1 ]; then
string="$type"
else
string="$type ($count/$maxcount)"
fi
echo "Mailing $string to $destin"
[ $total -ne 0 ] && sleep $SLEEP
no -s "$string: $subject" $destin < $file
total=`expr $total + 1`
[ $count -lt $maxcount ] && sleep $SLEEP
done
done
if [ $total -eq 0 ]; then
echo 'No message queued'
elif [ $total -eq 1 ]; then
echo 'Message queued'
else
echo "$count messages queued"
fi
)
exit 0